
#if !defined(AFX_CLINKINPUTNODE_H_INCLUDED_20120619)
#define AFX_CLINKINPUTNODE_H_INCLUDED_20120619

class CLinkInputNode
{
public:
	CLinkInputNode();
	~CLinkInputNode();
	
	CLinkInputNode*				GetPrevNode();
	CLinkInputNode*				GetNextNode();

	CWnd*						GetCtrl();
	DWORD						GetCtrlType();

	static CLinkInputNode*		GetHeadNode();

	static BOOL					AddInput(CWnd* pInput, DWORD dwType);
	static BOOL					DelInput(CWnd* pInput);

	static BOOL					EnableInputs(BOOL bEnable, DWORD dwTypeMask, CWnd* pParent = NULL);
	static BOOL					EnableCheckValid(BOOL bEnable, DWORD dwTypeMask, CWnd* pParent = NULL);

private:
	static CLinkInputNode*		m_spLinkHead;
	static CLinkInputNode*		m_spLinkTail;
	
	CLinkInputNode*				m_pPrev;
	CLinkInputNode*				m_pNext;
	
	CWnd*						m_pInputCtrl;
	DWORD						m_dwType;
};


#endif//AFX_CLINKINPUTNODE_H_INCLUDED_20120619